<? // dodawanie / edycja użytkownika
require('init.php'); // obowiązkowy nagłówek

// sprawdź czy mamy tryb edycji użytkownika (formularz z przyciskami)
$edit = isset($GET->edit) && $GET->edit == 'on' || isset($GET->id) && $GET->id == 'new';
$passedit = isset($GET->passedit) && $GET->passedit == 'on';

// aktualizuj bazę jeśli trzeba
if(isset($GET->update)) {
	$id = $GET->update;
	if($id == 'new') {
		$super = (isset($POSTs->super) ? 't' : 'n');
		$hash = md5($POSTs->pass);
		$login = (isset($POSTs->login) ? $POSTs->login : '');
		$mail = (isset($POSTs->mail) ? $POSTs->mail : '');
		query("insert into uzytkownicy ( login, pass, e_mail, superuser ) values ('$POSTs->login', '$hash', '$POSTs->mail', '$super') ");
		$id = queryo("select lastval() as id")->id;
	}
	if (isset($POSTs->pass))
	{
		$hash = md5($POSTs->pass);
		query("
			update uzytkownicy set
				pass='$hash'
			where id='$id'	
		");
	}
	else
	{
		$super = (isset($POSTs->super) ? 't' : 'n');
		query("
			update uzytkownicy set
				e_mail = '$POSTs->mail',
				superuser = '$super'
			where id = '$id'
		");
	}
} else $id = isset($GET->id) ? $GET->id : 'new';

//sprawdź, czy mamy autoryzację wprowadzania zmian
if ($edit || $passedit)
{
	$login = $_SESSION['kd_login'];
	$active_user = queryo("select * from uzytkownicy where login='$login'");
	if ($active_user->superuser == 'f' && $active_user->id != $id)
	{
		echo "AUTHORIZATION FAILED";
		require('flush.php');
		exit;
	}
}

// pobierz informacje o użytkowniku
if($id != 'new') {
	$user = queryo("select * from uzytkownicy where id='$id'");
}

// obowiązkowy tytuł strony
$pageTitle = $id == 'new' ? 'Nowy użytkownik' : (($edit? "Edycja użytkownika: " : "Widok użytkownika: ").$user->login);

$new = $id == 'new';
$login = $new ? '' : $user->login;
$pass = $new ? '' : $user->pass;
$mail = $new ? '' : $user->e_mail;
$super = $new ? '' : ($user->superuser == 't' ? 'TAK' : 'NIE');


$deleteBtn = $new ? '' : <<<HTML
<input type="button" value="Usuń użytkownika" onClick="if(confirm('Czy na pewno chcesz nieodwracalnie usunąć użytkownika?')) window.location='users.php?delete=$id' ">
HTML;

$cancelBtn = $new ? <<<HTML
<input type="button" value="anuluj" onClick="window.location='users.php' ">
HTML
: <<<HTML
<input type="button" value="anuluj" onClick="window.location='user-view.php?id=$id' ">
HTML;

$submitBtn = $new? 'dodaj' : 'wyślij';
if ($passedit) $submitBtn = 'Zmień hasło';
if ($new)
{
	echo <<<HTML
	<form method='post' action='user-view.php?update=$id'>
	<table>
	<tr><td>Login:</td><td><input type='text' name='login' value=''/></td></tr>
	<tr><td>Hasło:</td><td><input type='password' name='pass' value=''/></td></tr>
	<tr><td>E-mail:</td><td><input type='text' name='mail' value=''/></td></tr>
	<tr><td>Superuser:</td><td><input type="checkbox" name="super" value="1"/></td></tr>
	</table>
	<p>
		$deleteBtn
		$cancelBtn
		<input type='submit' value='$submitBtn'/>
	</p>
	</form>
HTML;
}
elseif($edit && $active_user->superuser == 't') 
{
	$c1 = ($super == 'TAK' ? "checked = 'checked'" : '');
	echo <<<HTML
	<form method='post' action='user-view.php?update=$id'>
	<table>
	<tr><td>E-mail:</td><td><input type='text' name='mail' value='$mail'/></td></tr>
	<tr><td>Superuser:</td><td><input type="checkbox" name="super" value="1" $c1/></td></tr>
	</table>
	<p>
		$deleteBtn
		$cancelBtn
		<input type='submit' value='$submitBtn'/>
	</p>
	</form>
HTML;
} elseif($edit)
{
	echo <<<HTML
	<form method='post' action='user-view.php?update=$id'>
	<table>
	<tr><td>E-mail:</td><td><input type='text' name='mail' value='$mail'/></td></tr>
	</table>
	<p>
		$deleteBtn
		$cancelBtn
		<input type='submit' value='$submitBtn'/>
	</p>
	</form>
HTML;
}elseif($passedit)
{
	echo <<<HTML
	<form method='post' action='user-view.php?update=$id' onSubmit="if(document.getElementById('pass').value==document.getElementById('pass2').value) { return true; } else { alert('Hasła się nie zgadzają!'); return false;}">
	<table>
	<tr><td>Nowe hasło:</td><td><input type='password' name='pass' id='pass' value=''/></td></tr>
	<tr><td>Powtórz hasło:</td><td><input type='password' name='pass2' id='pass2' value=''/></td></tr>
	</table>
	<p>
		<input type='submit' value='$submitBtn'/>
	</p>
	</form>
HTML;
}
else echo <<<HTML
<table>
<tr><td>Login:</td><td>$login</td></tr>
<tr><td>Password:</td><td>$pass</td></tr>
<tr><td>E-mail:</td><td>$mail</td></tr>
<tr><td>Superuser:</td><td>$super</td></tr>
</table>

<p><a href='user-view.php?id=$id&edit=on'>Zarządzaj</a></p>
<p><a href='user-view.php?id=$id&passedit=on'>Zmień hasło</a></p>
HTML;

require('flush.php');
?>
